NB. JOD dictionary dump: 22 May 2008 13:32:34

NB.
NB. Names & DidNums on current path
NB. +---------+---------------------------------------+
NB. |jodbptest|291561534140420068901367094461714542730|
NB. +---------+---------------------------------------+

9!:41 [ 1 NB.{*JOD*}
cocurrent 'base' NB.{*JOD*}
sonl_z_=: 'sonl__MK__JODobj i.4' NB.{*JOD*}
showpass_z_=:] [ 1!:2&2 NB.{*JOD*}
SOLOCALE_z_=:":>SO__JODobj NB.{*JOD*}
soput_z_=:SOLOCALE&put NB.{*JOD*}
soclear_z_=: '0 0 $ clearso__MK__JODobj 0' NB.{*JOD*}

cocurrent SO__JODobj NB.{*JOD*}


NORISESET=:99

showpass soput ".'nl_',SOLOCALE,'_ i.4' [ cocurrent 'base' NB.{*JOD*}
".soclear NB.{*JOD*}
cocurrent SO__JODobj NB.{*JOD*}


antimode=:3 : 0

NB.*antimode v-- finds the least frequently occurring  item(s) in
NB. a list.
NB.
NB. monad:  ul =. antimode ul
NB.
NB.   antimode ?.500#100
NB.   antimode ;:'blah blah blah yada yada wisdom'


if. 0 < # y =. ,y do.    NB. no antimodes for null lists
  f =. #/.~ y            NB. nub frequency
  (~. y) #~ f e. <./ f   NB. lowest frequency items
else. y
end.
)

arctan=:_3&o.

calmoons=:3 : 0

NB.*calmoons v-- calendar dates of new and full moons. 0's denote
NB. new moons and 1's denote full moons.
NB.
NB. monad:  it =. calmoons ilYears
NB.
NB.   calmoons 1900 2000

NB. compute Julian dates and convert to calendar
j=. moons y
t=. fromjulian <. {. j

NB. attach new (0) and full (1) bits
j=. 0 [ t=. (, |: {: j) ,"0 1 ,/ t

NB. eliminate year overlap and duplicate dates
~. t #~  (1 {"1 t) e. y
)

cos=:2&o.

datecheck=:3 : 0

NB.*datecheck v-- checks dates in YYYY  MM DD format.  The result
NB. is a boolean list with 1's corresponding to valid (y) dates.
NB.
NB. This  algorithm was adapted from an APL  function. It assumes
NB. efficient booleans which  is not the case in current versions
NB. of J. Despite this handicap this verb still performs well and
NB. can check tens of thousands of dates in seconds.
NB.
NB. monad:  pl =. datecheck itYYYYMMDD
NB.
NB.   datecheck 1953 7 2  NB. 3 item list treated as 1 3 table
NB.   datecheck 0 1 1     NB. no test for year 0
NB.
NB.   NB. invalid dates in the 1990's YYYY MM DD cross product
NB.   the90s =. > , { (1990 + i. 10) ; (>: i. 12) ; >: i. 31
NB.   the90s #~ -. datecheck the90s

y=. 0 [ 'y m d'=. 0 1 2 { |: y  NB. (*)=. y m d
r=. (400 | 1 >. <. y) { (100 $ 1 0 0 0) , 300 $ 0 0 0 0 , 96 $ 1 0 0 0
r=. (31 28 31 30 31 30 31 31 30 31 30 31 0 {~ m i.~ }. i. 13) + r *. m = 2
(y=<.y) *. (y>:0) *. (y<4000) *. (d=<.d) *. (d>0) *. d<:r
)

dev=:-"_1 _ mean

dstat=:3 : 0

NB.*dstat v-- descriptive statistics
NB.
NB. monad:  dstal nl
NB.
NB.   dstat  ?.1000#100

t=. '/sample size/minimum/maximum/1st quartile/2nd quartile/3rd quartile/first mode'
t=. t , '/first antimode/mean/std devn/skewness/kurtosis'
min=. <./ 
max=. >./
t=. ,&':  ' ;._1 t
v=. $,min,max,q1,median,q3,({.@mode2),({.@antimode),mean,stddev,skewness,kurtosis
t,. ": ,. v , y
)

freqdist=:~.@] ,: #/.~

fromjulian=:3 : 0

NB.*fromjulian v-- converts Julian day numbers to dates, converse
NB. (tojulian).
NB.
NB. monad:  itYYYYMMDD =. fromjulian nlJulian
NB.
NB.   juldayno=. 1 tojulian 17770704 19530702 20000101 20331225
NB.   fromjulian juldayno
NB.
NB. dyad:  i[1,2]YYYYMMDD =. fromjulian nlJulian
NB.
NB.   0 fromjulian juldayno   NB. monad
NB.   1 fromjulian juldayno

0 fromjulian y
:
NB. Gregorian Calendar correction
b=.      2299161 <: y
jalpha=. <. 36524.25 %~ _0.25 + y - 1867216
ja=.     (y * -. b) + b * y + 1 + jalpha - <. 0.25 * jalpha

jb=. ja + 1524
jc=. <. 6680.0 + ((jb - 2439870) - 122.1) % 365.25
jd=. <. (365 * jc) + 0.25 * jc
je=. <. (jb - jd) % 30.6001

id=. (jb - jd) - <. 30.6001 * je
mm=. je - 1
mm=. mm - 12 * mm > 12

iyyy=. jc - 4715
iyyy=. iyyy - mm > 2
iyyy=. iyyy - iyyy <: 0

NB. convert result format
if. x do. 100 #. |: iyyy , mm ,: id  else. |: iyyy , mm ,: id end.
)

fuserows=:>@((>@[ ,"1 >@])/)

geomean=:# %: */

harmean=:mean&.%

kurtosis=:# * +/@(^&4)@dev % *:@ssdev

lsfit=:3 : 0

NB.*lsfit v-- coefficients of polynomical fitting data points.
NB.
NB. Lease squares  polynomial  curve fit.  (y)  is  a two  column
NB. matrix of X, Y. (x) is polynomial order (default 2).
NB.
NB. monad:  lsfit ftXY
NB.
NB. dyad:  n lsfit ftXY

2 lsfit y
:
'ax ay'=. |: y
ay%.ax^/i.>:x
)

mean=:+/ % #

median=:-:@(+/)@((<. , >.)@midpt { /:~)

midpt=:-:@<:@#

mode2=:3 : 0

NB.*mode2 v-- finds  the  most frequently occurring item(s) in  a
NB. list.
NB.
NB. monad:  ul =. mode2 ul
NB.
NB.   mode2 ?.500#100
NB.   mode2 ;:'I do what I do because I am what I am'

if. 0 < # y =. ,y do.     NB. null lists have no modes
  f =. #/.~ y             NB. nub frequency
  (~. y) #~ f e. >./ f    NB. highest frequency items
else. y
end.
)

moons=:3 : 0

NB.*moons v-- times of new and full moons for n calendar years.
NB.
NB. The  result  is  rank 3 numeric array  where  ({.  moons) are
NB. Julian day numbers and ({: moons)  is  a  logical  mask  with
NB. (0)'s denoting new moons and (1)'s denoting full moons.
NB.
NB. monad:  ftJulian=. moons ilYears
NB.
NB.        moons 1996 1997 2002

NB.  vector J                         scalar Basic
y=. , y
r1=. 1r180p1                          NB.  R1=3.14159265/180
k0=. <. 12.3685 * y - 1900            NB.  K0=INT((Y-1900)*12.3685)
t=.  (y - 1899.5) % 100               NB.  T=(Y-1899.5)/100
t2=. *: t [ t3=. t^3                  NB.  T2=T*T: T3=T*T*T
j0=. 2415020 + 29 * k0                NB.  J0=2415020+29*K0
f0=. (0.0001178*t2) - 0.000000155*t3  NB.  F0=0.0001178*T2-0.000000155*T3
f0=. f0 + 0.75933 + 0.53058868*k0     NB.  F0=F0+0.75933+0.53058868*K0
f0=. (f0-(0.000837*t))-0.000335*t2    NB.  F0=F0-0.000837*T-0.000335*T2
m0=. k0 * 0.08084821133               NB.  M0=K0*0.08084821133
m0=. 359.2242 + 360 * 1 | m0          NB.  M0=360*(M0-INT(M0))+359.2242
m0=. m0 - 0.0000333*t2                NB.  M0=M0-0.0000333*T2
m0=. m0 - 0.00000347*t3               NB.  M0=M0-0.00000347*T3
m1=. k0 * 0.07171366128               NB.  M1=K0*0.07171366128
m1=. 306.0253 + 360 * 1 | m1          NB.  M1=360*(M1-INT(M1))+306.0253
m1=. m1 + 0.0107306*t2                NB.  M1=M1+0.0107306*T2
m1=. m1 + 0.00001236*t3               NB.  M1=M1+0.00001236*T3
b1=. k0 * 0.08519585128               NB.  B1=K0*0.08519585128
b1=. 21.2964 + 360 * 1 | b1           NB.  B1=360*(B1-INT(B1))+21.2964
b1=. b1 - 0.0016528*t2                NB.  B1=B1-0.0016528*T2
b1=. b1 - 0.00000239*t3               NB.  B1=B1-0.00000239*T3

NB. rank conjuntion vectorizes BASIC loop
k9=. i. 29                            NB.  FOR K9=0 TO 28
j=.  j0 +"1 0 ] 14*k9                 NB.  J=J0+14*K9
f=.  f0 +"1 0 ] 0.765294*k9           NB.  F=F0+0.765294*K9
k=.  k9 % 2                           NB.  K=K9/2
m5=. r1 * m0 +"1 0 k*29.10535608      NB.  M5=(M0+K*29.10535608)*R1
m6=. r1 * m1 +"1 0 k*385.81691806     NB.  M6=(M1+K*385.81691806)*R1
b6=. r1 * b1 +"1 0 k*390.67050646     NB.  B6=(B1+K*390.67050646)*R1
f=.  f - 0.4068 * sin m6              NB.  F=F-0.4068*SIN(M6)
f=.  f + (0.1734 - 0.000393*t) *"1 1 sin m5   NB. F=F+(0.1734-0.000393*T)*SIN(M5)
f=.  f + 0.0161 * sin 2*m6            NB.  F=F+0.0161*SIN(2*M6)
f=.  f + 0.0104 * sin 2*b6            NB.  F=F+0.0104*SIN(2*B6)
f=.  f - 0.0074 * sin m5-m6           NB.  F=F-0.0074*SIN(M5-M6)
f=.  f - 0.0051 * sin m5+m6           NB.  F=F-0.0051*SIN(M5+M6)
f=.  f + 0.0021 * sin 2*m5            NB.  F=F+0.0021*SIN(2*M5)
f=.  f + 0.0010 * sin m6 -~ 2*b6      NB.  F=F+0.0010*SIN(2*B6-M6)
j=.  j + f                            NB.  J=J+INT(F): F=F-INT(F)
u=.  0 1 $~ # k9                      NB. IF U=0 THEN PRINT " NEW MOON ";
j ,: |: (#y) # ,: u                   NB. IF U=1 THEN PRINT "FULL MOON ";
)

movgmean=:-@[ (# %: */)\ ]

movmean=:-@[ (+/ % #)\ ]

q1=:median@((median > ]) # ]) ::_:

q3=:median@((median < ]) # ]) ::_:

round=:[ * [: <. 0.5 + %~

sin=:1&o.

skewness=:%:@# * +/@(^&3)@dev % ^&1.5@ssdev

ssdev=:+/@:*:@dev

stddev=:%:@:var

sunriseset0=:3 : 0

NB.*sunriseset0 v-- computes sun rise and set times - see long documentation.
NB.
NB. monad:  itHM =. sunriseset0 ilBLHMD | ftBLHMD

NB. latitude, longitude, time-zone, month, day (*)=. b l h m d
y=. # b [ 'b l h m d'=. |: tabit y
b=. dr * b [ rd =. % dr=. 1r180p1

NB. day number within year
n=. _30 + d + (<.9 %~ 275 * m) - 2 * <. 12 %~ m + 9

NB. sun's mean longitude
lg0=. 4.8771 + 0.0172 * (n + 0.5) - l % 360

NB. equation of time
c=. 0.03342 * sin lg0 + 1.345
c2=. rd * c -~ (arctan tan lg0 + c) - arctan 0.9175 * tan lg0 + c
cd=. %: 1 - *: sd=. 0.3978 * sin lg0 + c
sc=. (0.0145 + sd * sin b) % cd * cos b

NB. to handle the three cases enmass without redundant calculations
NB. a boolean table is computed.  1's in each row satisfy a case.
items=. i. #sc [ cases=. (<&_1 , 1&>:@| ,: 1&<) sc

NB. set result table to sun never sets
hrmn=. |: (y , 4)$ NORISESET , 1 0 0

NB. adjust for the sun's declination and atmospheric refraction
pos=. items #~ 1 { cases
c3=. rd * arctan (pos{sc) % %: 1 - *: pos{sc
lc=. (pos{l) + pos{c2

NB. time zone adjusted sunrise times
st=. (6 - pos{h) - (lc + c3) % 15
mn=. <.(st - hr) * 60 [ hr=. <. st
hrmn=. hr (<0;pos)} hrmn
hrmn=. mn (<1;pos)} hrmn

NB. time zone adjusted sunset times
st=. (18 - pos{h) - (lc - c3) % 15
mn=. <.(st - hr) * 60 [ hr =. <. st
hrmn=. hr (<2;pos)} hrmn
hrmn=. mn (<3;pos)} hrmn

NB. sun never rises and result table with rows hr,mr,hs,ms
pos=. items #~ 0 {cases
0 (<1;pos)} hrmn
)

sunriseset1=:3 : 0

NB.*sunriseset1 v-- computes sun rise and set times - see long documentation.
NB.
NB. monad:  itHM =. sunriseset1 flBLHMDY | ftBHMDY 

NB. latitude, longitude, time-zone, month, day, year (*)=. la lo tz m d y
y=. # la [ 'la lo tz m d y'=. |: tabit y
dr=. 1r180p1 [ dd=. 360 % 365.25636 [ rt=. 50r60

NB. days into year with leap year adjustment
dm=. 0 31 59 90 120 151 181 212 243 273 304 334
dl=. (2 {. dm) , >: 2 }. dm
bl=. 0 = 4 | y [ m=. <: m
dy=. d + ((-.bl) * m { dm) + bl * m { dl
dy=. 0.5 + dy - lo % 360

NB. (th) angle Earth has moved since winter solstice
th=. 9.357001 + (dd * dy) + 1.914 * sin dr * (dd * dy) - 3.97
c3=. 0.3978 * cos dr * th
dc=. (- % dr) * arctan c3 % %: 1 - c3 ^ 2

NB. adjust for positive and negative latitudes
bl=. la < 0
a1=. ((-.bl) * (90 - la) + dc) + bl * (90 + la) - dc
a2=. ((-.bl) * (la - 90) + dc) + bl * (_90 - la) - dc

NB. sun never rises or sets masks
nvset =. a2 >: - rt [ nvrise=. a1 < - rt

NB. corrections
drla=. dr * la   [ drdc=. dr * dc
c1=. ((sin - dr * rt) - (sin drdc) * sin drla) % (cos drdc) * cos drla
t2=. dr %~ arctan (%: 1 - c1 ^ 2) % c1
t1=. 360 - t2 [ bl=. c1 < 0
t2=. (t2 * -.bl) + bl * 180 + t2
t1=. (t1 * -.bl) + bl * 360 - t2

NB. first order equation of time
et=. 0.1511 * sin dr * 17.86 + 2 * dddy=. dd * dy
et=. (_0.1276 * sin dr * dddy - 3.97) - et
drla=. drdc=. dddy=. 0

NB. time zone adjusted rise and set times
tr=. (t1 % 15) - 12 [ ts=. t2 % 15
tr=. tr - et [ ts=. ts - et
s =. ts + tc [ r=. tr + tc [ tc=. (-tz) - lo % 15
hrmn=. (<. r) ,: 1 round 60 * 1|r
hrmn=. hrmn , (<.12 + s) ,: 1 round 60 * 1|s

NB. adjust for when sun never rises or sets
hrmn=. hrmn *"1 -. bl [ bl=. nvset +. nvrise
hrmn=. NORISESET (<0;bl # pos) } hrmn [ pos=. i. {: $ hrmn
1 (<1;nvset # pos) } hrmn
)

tabit=:]`,:@.(1&>:@(#@$))^:2

tan=:3&o.

today=:3 : 0

NB.*today v-- returns todays date.
NB.
NB. monad:  ilYYYYMMDD =. today uu
NB.
NB.   today 0    NB. ignores argument
NB.
NB. dyad:  iaYYYYMMDD =. uu today uu
NB.
NB.   0 today 0

3&{.@(6!:0) ''
:
0 100 100 #. <. 3&{.@(6!:0) ''
)

var=:ssdev % <:@#

yeardates=:3 : 0

NB.*yeardates v-- returns all valid dates for n calendar years.
NB.
NB. The monad returns an integer table with YYYY MM DD rows.  The
NB. dyad returns dates as a list of YYYYMMDD integers.
NB.
NB. This algorithm  uses  a  series of outer-products  and  ravel
NB. reductions to form a cross  product rather  than  the  direct
NB. catalog verb ({).
NB.
NB. monad:  itYYYYMMDD =. yeardates ilYears
NB.
NB.   yeardates 2000
NB.
NB.   yeardates 2001 + i. 100  NB. all dates in 21st century
NB.
NB.
NB. dyad:  ilYYYYMMDD =. uu yeardates ilYears
NB.
NB.   0 yeardates 2001
NB.
NB.   yeardates~  1999 2000 2001   NB. useful idiom

NB. generate all possible dates in years
days =. ,/ (,y) ,"0 1/ ,/ (>: i. 12) ,"0/ >: i. 31

NB. remove invalid dates
days #~ datecheck days
:

NB. convert to yyyy mm dd format
0 100 100 #. yeardates y
)

showpass soput ".'nl_',SOLOCALE,'_ i.4' [ cocurrent 'base' NB.{*JOD*}
".soclear NB.{*JOD*}
cocurrent SO__JODobj NB.{*JOD*}
zz=:''
zz=:zz,'36 2$<;._1 ''|NORISESET|indicates sun never rises or sets in (sunris'
zz=:zz,'eset0) and (sunriseset1) results|antimode|finds the least frequentl'
zz=:zz,'y occurring item(s) in a list|arctan|arc tangent|calmoons|calendar '
zz=:zz,'dates of new and full moons|cos|cosine radians|datecheck|checks dat'
zz=:zz,'es in YYYY MM DD format|dev|deviation about mean|dstat|descriptive '
zz=:zz,'statistics|freqdist|frequency distribution of numeric items|fromjul'
zz=:zz,'ian|converts Julian day numbers to dates, converse (tojulian)|fuser'
zz=:zz,'ows|opens and catenates boxed lists on the last axis|geomean|geomet'
zz=:zz,'ric mean of a list|harmean|harmonic mean|kurtosis|kurtosis|lsfit|co'
zz=:zz,'efficients of polynomical fitting data points|mean|mean value of a '
zz=:zz,'list|median| median value of a list|midpt|mid-point|mode2|finds the'
zz=:zz,' most frequently occurring item(s) in a list|moons|times of new and'
zz=:zz,' full moons for n calendar years|movgmean|moving geometric mean|mov'
zz=:zz,'mean|moving mean|q1|first quartile|q3|third quartile|round|round y '
zz=:zz,'to nearest x (e.g. 1000 round 12345)|sin|sine radians|skewness|skew'
zz=:zz,'ness|ssdev|sum of square deviations (2)|stddev|standard deviation ('
zz=:zz,'alternate spelling)|sunriseset0|computes sun rise and set times - s'
zz=:zz,'ee long documentation|sunriseset1|computes sun rise and set times -'
zz=:zz,' see long documentation|tabit|promotes only atoms and lists to tabl'
zz=:zz,'es|tan|tan radians|today|returns todays date|var|var|yeardates|retu'
zz=:zz,'rns all valid dates for n calendar years''                          '
zz=:1381{.zz
showpass 0 8 put ". ".'zz_',SOLOCALE,'_' [ cocurrent 'base' NB.{*JOD*}
".soclear NB.{*JOD*}

cocurrent SO__JODobj NB.{*JOD*}
zz=:''
zz=:zz,'2 2$''sunriseset0'';(42 115 117 110 114 105 115 101 115 101 116 48 32'
zz=:zz,' 118 45 45 32 115 117 110 114 105 115 101 32 97 110 100 32 115 117 '
zz=:zz,'110 115 101 116 32 116 105 109 101 115 46 13 10 13 10 84 104 105 11'
zz=:zz,'5 32 32 118 101 114 98 32 104 97 115 32 98 101 101 110 32 97 100 97'
zz=:zz,' 112 116 101 100 32 102 114 111 109 32 97 32 66 65 83 73 67 32 112 '
zz=:zz,'114 111 103 114 97 109 32 115 117 98 109 105 116 116 101 100 32 98 '
zz=:zz,'121 13 10 82 111 98 105 110 32 32 71 46 32 32 83 116 117 97 114 116'
zz=:zz,' 32 32 83 107 121 32 32 38 32 32 84 101 108 101 115 99 111 112 101 '
zz=:zz,'39 115 32 32 115 104 111 114 116 101 115 116 32 32 115 117 110 114 '
zz=:zz,'105 115 101 47 115 101 116 13 10 112 114 111 103 114 97 109 32 32 9'
zz=:zz,'9 111 110 116 101 115 116 46 32 87 105 110 110 105 110 103 32 32 10'
zz=:zz,'1 110 116 114 105 101 115 32 119 101 114 101 32 108 105 115 116 101'
zz=:zz,' 100 32 32 105 110 32 116 104 101 32 32 77 97 114 99 104 13 10 49 5'
zz=:zz,'7 57 53 32 65 115 116 114 111 110 111 109 105 99 97 108 32 67 111 1'
zz=:zz,'09 112 117 116 105 110 103 32 99 111 108 117 109 110 46 13 10 13 10'
zz=:zz,' 84 104 101 32 32 74 32 118 101 114 115 105 111 110 32 111 102 32 1'
zz=:zz,'16 104 105 115 32 97 108 103 111 114 105 116 104 109 32 104 97 115 '
zz=:zz,'32 98 101 101 110 32 118 101 99 116 111 114 105 122 101 100 46 32 3'
zz=:zz,'2 73 116 32 99 97 110 13 10 99 111 109 112 117 116 101 32 97 110 12'
zz=:zz,'1 32 110 117 109 98 101 114 32 111 102 32 115 117 110 114 105 115 1'
zz=:zz,'01 32 97 110 100 32 115 117 110 115 101 116 32 116 105 109 101 115 '
zz=:zz,'32 105 110 32 111 110 101 32 99 97 108 108 46 13 10 13 10 78 66 46 '
zz=:zz,'32 118 101 114 98 97 116 105 109 58 13 10 13 10 84 104 101 32 40 12'
zz=:zz,'1 41 32 97 114 103 117 109 101 110 116 32 105 115 32 97 32 53 42 11'
zz=:zz,'0 32 102 108 111 97 116 105 110 103 32 112 111 105 110 116 32 116 9'
zz=:zz,'7 98 108 101 32 119 104 101 114 101 58 13 10 13 10 32 48 123 32 105'
zz=:zz,' 115 32 108 97 116 105 116 117 100 101 32 105 110 32 100 101 103 11'
zz=:zz,'4 101 101 115 32 119 105 116 104 32 110 111 114 116 104 101 114 110'
zz=:zz,' 32 108 97 116 105 116 117 100 101 115 32 112 111 115 105 116 105 1'
zz=:zz,'18 101 46 13 10 32 49 123 32 105 115 32 108 111 110 103 105 116 117'
zz=:zz,' 100 101 32 105 110 32 100 101 103 114 101 101 115 32 119 105 116 1'
zz=:zz,'04 32 119 101 115 116 101 114 110 32 108 111 110 103 105 116 117 10'
zz=:zz,'0 101 115 32 110 101 103 97 116 105 118 101 46 13 10 32 50 123 32 1'
zz=:zz,'05 115 32 119 101 115 116 101 114 110 32 116 105 109 101 32 122 111'
zz=:zz,' 110 101 115 32 101 120 112 114 101 115 115 101 100 32 97 115 32 11'
zz=:zz,'2 111 115 105 116 105 118 101 32 119 104 111 108 101 32 104 111 117'
zz=:zz,' 114 115 46 13 10 32 51 123 32 105 115 32 116 104 101 32 109 111 11'
zz=:zz,'0 116 104 32 110 117 109 98 101 114 46 13 10 32 52 123 32 105 115 3'
zz=:zz,'2 116 104 101 32 100 97 121 32 110 117 109 98 101 114 46 13 10 13 1'
zz=:zz,'0 84 104 101 32 114 101 115 117 108 116 32 105 115 32 97 32 110 117'
zz=:zz,' 109 101 114 105 99 32 116 97 98 108 101 32 119 105 116 104 32 102 '
zz=:zz,'111 117 114 32 114 111 119 115 46 32 32 84 111 32 104 97 110 100 10'
zz=:zz,'8 101 32 116 104 101 32 99 97 115 101 115 13 10 119 104 101 110 32 '
zz=:zz,'116 104 101 32 115 117 110 32 110 101 118 101 114 32 114 105 115 10'
zz=:zz,'1 115 32 111 114 32 115 101 116 115 32 116 104 101 32 102 105 114 1'
zz=:zz,'15 116 32 116 119 111 32 101 108 101 109 101 110 116 115 32 111 102'
zz=:zz,' 32 116 104 101 13 10 99 111 114 114 101 115 112 111 110 100 105 11'
zz=:zz,'0 103 32 114 101 115 117 108 116 32 99 111 108 117 109 110 115 32 1'
zz=:zz,'10 32 97 114 101 58 13 10 13 10 32 48 123 32 105 115 32 78 79 82 73'
zz=:zz,' 83 69 83 69 84 32 97 110 32 105 110 118 97 108 105 100 32 104 111 '
zz=:zz,'117 114 32 105 110 100 105 99 97 116 105 110 103 32 110 111 32 114 '
zz=:zz,'105 115 101 32 111 114 32 115 101 116 13 10 32 49 123 32 105 115 32'
zz=:zz,' 48 32 119 104 101 110 32 116 104 101 32 115 117 110 32 110 101 118'
zz=:zz,' 101 114 32 114 105 115 101 115 13 10 32 49 123 32 105 115 32 49 32'
zz=:zz,' 119 104 101 110 32 116 104 101 32 115 117 110 32 110 101 118 101 1'
zz=:zz,'14 32 115 101 116 115 13 10 13 10 87 97 114 110 105 110 103 58 32 1'
zz=:zz,'16 104 105 115 32 97 108 103 111 114 105 116 104 109 32 98 114 101 '
zz=:zz,'97 107 115 32 102 111 114 32 108 97 116 105 116 117 100 101 115 32 '
zz=:zz,'99 108 111 115 101 13 10 116 111 32 116 104 101 32 83 111 117 116 1'
zz=:zz,'04 32 112 111 108 101 46 13 10 13 10 84 104 101 32 111 114 105 103 '
zz=:zz,'105 110 97 108 32 66 65 83 73 67 32 99 111 100 101 32 104 97 115 32'
zz=:zz,' 98 101 101 110 32 115 108 105 103 104 116 108 121 32 109 111 100 1'
zz=:zz,'05 102 105 101 100 13 10 116 111 32 117 115 101 32 99 111 110 116 1'
zz=:zz,'14 111 108 32 115 116 114 117 99 116 117 114 101 115 32 105 110 32 '
zz=:zz,'112 108 97 99 101 32 111 102 32 71 79 84 79 39 115 32 97 110 100 32'
zz=:zz,' 108 105 110 101 32 110 117 109 98 101 114 115 46 13 10 13 10 65 10'
zz=:zz,'0 97 112 116 101 100 32 102 114 111 109 58 13 10 13 10 39 32 83 117'
zz=:zz,' 110 114 105 115 101 47 115 101 116 32 98 121 32 82 46 32 71 46 32 '
zz=:zz,'83 116 117 97 114 116 44 32 32 77 101 120 105 99 111 32 67 105 116 '
zz=:zz,'121 44 32 77 101 120 105 99 111 13 10 80 73 32 61 32 51 46 49 52 49'
zz=:zz,' 53 57 50 54 53 35 58 32 68 82 32 61 32 80 73 32 47 32 49 56 48 58 '
zz=:zz,'32 82 68 32 61 32 49 32 47 32 68 82 13 10 73 78 80 85 84 32 34 76 9'
zz=:zz,'7 116 44 32 76 111 110 103 32 40 100 101 103 41 34 59 32 66 53 44 3'
zz=:zz,'2 76 53 13 10 73 78 80 85 84 32 34 84 105 109 101 32 122 111 110 10'
zz=:zz,'1 32 40 104 114 115 41 34 59 32 72 13 10 66 53 32 61 32 68 82 32 42'
zz=:zz,' 32 66 53 13 10 73 78 80 85 84 32 34 77 111 110 116 104 44 32 100 9'
zz=:zz,'7 121 34 59 32 77 44 32 68 13 10 78 32 61 32 73 78 84 40 50 55 53 3'
zz=:zz,'2 42 32 77 32 47 32 57 41 32 45 32 50 32 42 32 73 78 84 40 40 77 32'
zz=:zz,' 43 32 57 41 32 47 32 49 50 41 32 43 32 68 32 45 32 51 48 13 10 76 '
zz=:zz,'48 32 61 32 52 46 56 55 55 49 32 43 32 46 48 49 55 50 32 42 32 40 7'
zz=:zz,'8 32 43 32 46 53 32 45 32 76 53 32 47 32 51 54 48 41 13 10 67 32 61'
zz=:zz,' 32 46 48 51 51 52 50 32 42 32 83 73 78 40 76 48 32 43 32 49 46 51 '
zz=:zz,'52 53 41 13 10 67 50 32 61 32 82 68 32 42 32 40 65 84 78 40 84 65 7'
zz=:zz,'8 40 76 48 32 43 32 67 41 41 32 45 32 65 84 78 40 46 57 49 55 53 32'
zz=:zz,' 42 32 84 65 78 40 76 48 32 43 32 67 41 41 32 45 32 67 41 13 10 83 '
zz=:zz,'68 32 61 32 46 51 57 55 56 32 42 32 83 73 78 40 76 48 32 43 32 67 4'
zz=:zz,'1 58 32 67 68 32 61 32 83 81 82 40 49 32 45 32 83 68 32 42 32 83 68'
zz=:zz,' 41 13 10 83 67 32 61 32 40 83 68 32 42 32 83 73 78 40 66 53 41 32 '
zz=:zz,'43 32 46 48 49 52 53 41 32 47 32 40 67 79 83 40 66 53 41 32 42 32 6'
zz=:zz,'7 68 41 13 10 73 70 32 65 66 83 40 83 67 41 32 60 61 32 49 32 84 72'
zz=:zz,' 69 78 13 10 32 32 67 51 32 61 32 82 68 32 42 32 65 84 78 40 83 67 '
zz=:zz,'32 47 32 83 81 82 40 49 32 45 32 83 67 32 42 32 83 67 41 41 13 10 3'
zz=:zz,'2 32 82 49 32 61 32 54 32 45 32 72 32 45 32 40 76 53 32 43 32 67 50'
zz=:zz,' 32 43 32 67 51 41 32 47 32 49 53 13 10 32 32 72 82 32 61 32 73 78 '
zz=:zz,'84 40 82 49 41 58 32 77 82 32 61 32 73 78 84 40 40 82 49 32 45 32 7'
zz=:zz,'2 82 41 32 42 32 54 48 41 13 10 32 32 80 82 73 78 84 32 85 83 73 78'
zz=:zz,' 71 32 34 83 117 110 114 105 115 101 32 97 116 32 35 35 58 35 35 34'
zz=:zz,' 59 32 72 82 59 32 77 82 13 10 32 32 83 49 32 61 32 49 56 32 45 32 '
zz=:zz,'72 32 45 32 40 76 53 32 43 32 67 50 32 45 32 67 51 41 32 47 32 49 5'
zz=:zz,'3 13 10 32 32 72 83 32 61 32 73 78 84 40 83 49 41 58 32 77 83 32 61'
zz=:zz,' 32 73 78 84 40 40 83 49 32 45 32 72 83 41 32 42 32 54 48 41 13 10 '
zz=:zz,'32 32 80 82 73 78 84 32 85 83 73 78 71 32 34 83 117 110 115 101 116'
zz=:zz,' 32 97 116 32 35 35 58 35 35 34 59 32 72 83 59 32 77 83 13 10 69 76'
zz=:zz,' 83 69 73 70 32 83 67 32 62 32 49 32 84 72 69 78 13 10 32 32 80 82 '
zz=:zz,'73 78 84 32 34 83 117 110 32 117 112 32 97 108 108 32 100 97 121 34'
zz=:zz,' 13 10 69 76 83 69 73 70 32 83 67 32 60 32 45 49 32 84 72 69 78 13 '
zz=:zz,'10 32 32 80 82 73 78 84 32 34 83 117 110 32 100 111 119 110 32 97 1'
zz=:zz,'08 108 32 100 97 121 34 13 10 69 78 68 32 73 70 13 10 69 78 68 13 1'
zz=:zz,'0 13 10 13 10 109 111 110 97 100 58 32 110 116 82 105 115 101 115 1'
zz=:zz,'01 116 32 61 46 32 115 117 110 114 105 115 101 115 101 116 48 32 10'
zz=:zz,'2 108 66 76 72 77 68 13 10 13 10 32 32 78 66 46 32 114 105 115 101 '
zz=:zz,'32 97 110 100 32 115 101 116 32 116 105 109 101 115 32 97 116 32 68'
zz=:zz,' 111 103 32 76 97 107 101 32 116 111 100 97 121 32 40 100 97 121 10'
zz=:zz,'8 105 103 104 116 32 115 97 118 105 110 103 115 41 13 10 32 32 116 '
zz=:zz,'100 61 46 32 40 52 52 32 43 32 49 57 37 54 48 41 44 40 45 32 55 54 '
zz=:zz,'32 43 32 50 49 37 54 48 41 44 32 52 32 44 32 125 46 32 116 111 100 '
zz=:zz,'97 121 32 48 13 10 32 32 115 117 110 114 105 115 101 115 101 116 48'
zz=:zz,' 32 116 100 13 10 13 10 32 32 78 66 46 32 114 105 115 101 32 97 110'
zz=:zz,' 100 32 115 101 116 32 116 105 109 101 115 32 111 110 32 74 117 110'
zz=:zz,' 101 32 51 48 32 111 110 32 71 114 101 101 110 119 105 99 104 32 10'
zz=:zz,'9 101 114 105 100 105 97 110 13 10 32 32 116 48 61 46 32 32 32 48 3'
zz=:zz,'2 48 32 48 32 54 32 51 48 32 32 32 78 66 46 32 101 113 117 97 116 1'
zz=:zz,'11 114 13 10 32 32 116 49 61 46 32 32 52 57 32 48 32 48 32 54 32 51'
zz=:zz,' 48 32 32 32 78 66 46 32 110 111 114 116 104 32 45 32 108 97 116 32'
zz=:zz,' 111 102 32 119 101 115 116 101 114 110 32 85 83 47 67 97 110 97 10'
zz=:zz,'0 97 32 98 111 114 100 101 114 13 10 32 32 116 50 61 46 32 95 52 55'
zz=:zz,' 32 48 32 48 32 54 32 51 48 32 32 32 78 66 46 32 115 111 117 116 10'
zz=:zz,'4 32 45 32 115 111 117 116 104 101 114 110 32 67 104 105 108 101 32'
zz=:zz,' 97 110 100 32 65 114 103 101 110 116 105 110 97 13 10 32 32 116 51'
zz=:zz,' 61 46 32 32 55 53 32 48 32 48 32 54 32 51 48 32 32 32 78 66 46 32 '
zz=:zz,'102 97 114 32 110 111 114 116 104 32 40 115 117 110 32 97 108 119 9'
zz=:zz,'7 121 115 32 117 112 41 13 10 32 32 116 52 61 46 32 95 55 53 32 48 '
zz=:zz,'32 48 32 54 32 51 48 32 32 32 78 66 46 32 102 97 114 32 115 111 117'
zz=:zz,' 116 104 32 40 115 117 110 32 97 108 119 97 121 115 32 100 111 119 '
zz=:zz,'110 41 13 10 13 10 32 32 115 117 110 114 105 115 101 115 101 116 48'
zz=:zz,' 32 116 48 13 10 13 10 32 32 115 117 110 114 105 115 101 115 101 11'
zz=:zz,'6 48 32 116 48 32 44 32 116 49 32 44 32 116 50 32 44 32 116 51 32 4'
zz=:zz,'4 58 32 116 52 13 10 13 10 32 32 78 66 46 32 116 105 109 101 115 32'
zz=:zz,' 111 110 32 101 113 117 97 116 111 114 32 102 111 114 32 77 97 114 '
zz=:zz,'99 104 32 50 49 32 102 111 114 32 97 108 108 32 49 32 104 111 117 1'
zz=:zz,'14 32 116 105 109 101 32 122 111 110 101 115 13 10 32 32 115 117 11'
zz=:zz,'0 114 105 115 101 115 101 116 48 32 32 48 32 48 32 44 34 49 32 40 4'
zz=:zz,'4 46 105 46 32 50 52 41 32 44 34 49 32 93 32 51 32 50 49 13 10 13 1'
zz=:zz,'0 32 32 78 66 46 32 116 105 109 101 115 32 102 111 114 32 99 97 108'
zz=:zz,' 101 110 100 97 114 32 121 101 97 114 32 49 57 57 53 32 111 110 32 '
zz=:zz,'116 104 101 32 71 114 101 101 110 119 105 99 104 32 109 101 114 105'
zz=:zz,' 100 105 97 110 13 10 32 32 109 100 57 53 61 46 32 32 52 55 32 48 3'
zz=:zz,'2 48 32 44 34 49 32 125 46 34 49 32 121 101 97 114 100 97 116 101 1'
zz=:zz,'15 32 49 57 57 53 13 10 32 32 114 115 48 57 53 61 46 32 115 117 110'
zz=:zz,' 114 105 115 101 115 101 116 48 32 109 100 57 53 13 10 13 10 13 10{'
zz=:zz,'a.);''sunriseset1'';42 115 117 110 114 105 115 101 115 101 116 49 32 '
zz=:zz,'118 45 45 32 115 117 110 114 105 115 101 32 97 110 100 32 115 117 1'
zz=:zz,'10 115 101 116 32 116 105 109 101 115 46 10 10 84 104 105 115 32 11'
zz=:zz,'8 101 114 98 32 104 97 115 32 98 101 101 110 32 97 100 97 112 116 1'
zz=:zz,'01 100 32 102 114 111 109 32 97 32 66 65 83 73 67 32 112 114 111 10'
zz=:zz,'3 114 97 109 32 115 117 98 109 105 116 116 101 100 32 32 98 121 10 '
zz=:zz,'74 97 109 101 115 32 32 66 114 105 109 104 97 108 108 32 32 116 111'
zz=:zz,' 32 83 107 121 32 38 32 32 84 101 108 101 115 99 111 112 101 39 115'
zz=:zz,' 32 96 96 115 104 111 114 116 101 115 116 32 115 117 110 114 105 11'
zz=:zz,'5 101 47 115 101 116 10 112 114 111 103 114 97 109 32 99 111 110 11'
zz=:zz,'6 101 115 116 46 32 32 87 105 110 110 105 110 103 32 101 110 116 11'
zz=:zz,'4 105 101 115 32 119 101 114 101 32 32 108 105 115 116 101 100 32 1'
zz=:zz,'05 110 32 32 116 104 101 32 32 77 97 114 99 104 10 49 57 57 53 32 6'
zz=:zz,'5 115 116 114 111 110 111 109 105 99 97 108 32 67 111 109 112 117 1'
zz=:zz,'16 105 110 103 32 99 111 108 117 109 110 46 10 10 84 104 101 32 32 '
zz=:zz,'40 121 41 32 97 114 103 117 109 101 110 116 32 32 111 102 32 40 115'
zz=:zz,' 117 110 114 105 115 101 115 101 116 49 41 32 32 105 115 32 97 32 3'
zz=:zz,'2 54 42 110 32 102 108 111 97 116 105 110 103 32 112 111 105 110 11'
zz=:zz,'6 10 116 97 98 108 101 32 119 104 101 114 101 58 10 10 118 101 114 '
zz=:zz,'98 97 116 105 109 58 10 10 32 32 48 123 32 105 115 32 108 97 116 10'
zz=:zz,'5 116 117 100 101 32 105 110 32 100 101 103 114 101 101 115 32 119 '
zz=:zz,'105 116 104 32 110 111 114 116 104 101 114 110 32 108 97 116 105 11'
zz=:zz,'6 117 100 101 115 32 112 111 115 105 116 105 118 101 46 10 32 32 49'
zz=:zz,' 123 32 105 115 32 108 111 110 103 105 116 117 100 101 32 105 110 3'
zz=:zz,'2 100 101 103 114 101 101 115 32 119 105 116 104 32 119 101 115 116'
zz=:zz,' 101 114 110 32 108 111 110 103 105 116 117 100 101 115 32 110 101 '
zz=:zz,'103 97 116 105 118 101 46 10 32 32 50 123 32 105 115 32 119 101 115'
zz=:zz,' 116 101 114 110 32 116 105 109 101 32 122 111 110 101 115 32 101 1'
zz=:zz,'20 112 114 101 115 115 101 100 32 97 115 32 112 111 115 105 116 105'
zz=:zz,' 118 101 32 119 104 111 108 101 32 104 111 117 114 115 46 10 32 32 '
zz=:zz,'51 123 32 105 115 32 116 104 101 32 109 111 110 116 104 32 110 117 '
zz=:zz,'109 98 101 114 46 10 32 32 52 123 32 105 115 32 116 104 101 32 100 '
zz=:zz,'97 121 32 110 117 109 98 101 114 46 10 32 32 53 123 32 105 115 32 1'
zz=:zz,'16 104 101 32 121 101 97 114 46 10 10 84 104 101 32 114 101 115 117'
zz=:zz,' 108 116 32 105 115 32 97 32 110 117 109 101 114 105 99 32 116 97 9'
zz=:zz,'8 108 101 32 119 105 116 104 32 102 111 117 114 32 114 111 119 115 '
zz=:zz,'46 32 32 84 111 32 104 97 110 100 108 101 32 116 104 101 32 99 97 1'
zz=:zz,'15 101 115 10 119 104 101 110 32 116 104 101 32 115 117 110 32 110 '
zz=:zz,'101 118 101 114 32 114 105 115 101 115 32 111 114 32 115 101 116 11'
zz=:zz,'5 32 116 104 101 32 102 105 114 115 116 32 116 119 111 32 101 108 1'
zz=:zz,'01 109 101 110 116 115 32 111 102 32 116 104 101 10 99 111 114 114 '
zz=:zz,'101 115 112 111 110 100 105 110 103 32 114 101 115 117 108 116 32 9'
zz=:zz,'9 111 108 117 109 110 115 32 110 32 97 114 101 58 10 10 32 32 48 12'
zz=:zz,'3 32 105 115 32 78 79 82 73 83 69 83 69 84 32 97 110 32 105 110 118'
zz=:zz,' 97 108 105 100 32 104 111 117 114 32 116 104 97 116 32 105 110 100'
zz=:zz,' 105 99 97 116 101 115 32 110 111 32 114 105 115 101 32 111 114 32 '
zz=:zz,'115 101 116 46 10 32 32 49 123 32 105 115 32 48 32 119 104 101 110 '
zz=:zz,'32 116 104 101 32 115 117 110 32 110 101 118 101 114 32 114 105 115'
zz=:zz,' 101 115 46 10 32 32 49 123 32 105 115 32 49 32 119 104 101 110 32 '
zz=:zz,'116 104 101 32 115 117 110 32 110 101 118 101 114 32 115 101 116 11'
zz=:zz,'5 46 10 10 65 100 97 112 116 101 100 32 102 114 111 109 58 10 10 39'
zz=:zz,' 32 83 117 110 114 105 115 101 47 115 101 116 32 98 121 32 74 97 10'
zz=:zz,'9 101 115 32 66 114 105 109 104 97 108 108 44 32 83 116 46 32 65 10'
zz=:zz,'8 98 97 110 115 44 32 87 86 10 80 73 32 61 32 51 46 49 52 49 53 57 '
zz=:zz,'50 55 35 58 32 68 82 32 61 32 80 73 32 47 32 49 56 48 58 32 68 68 3'
zz=:zz,'2 61 32 51 54 48 32 47 32 51 54 53 46 50 53 54 51 54 35 58 32 68 73'
zz=:zz,' 77 32 68 40 50 48 41 10 68 65 84 65 32 48 44 51 49 44 53 57 44 57 '
zz=:zz,'48 44 49 50 48 44 49 53 49 44 49 56 49 44 50 49 50 44 50 52 51 44 5'
zz=:zz,'0 55 51 44 51 48 52 44 51 51 52 10 70 79 82 32 67 32 61 32 49 32 84'
zz=:zz,' 79 32 49 50 58 32 82 69 65 68 32 68 40 67 41 58 32 78 69 88 84 32 '
zz=:zz,'67 10 73 78 80 85 84 32 34 76 97 116 44 32 108 111 110 103 34 59 32'
zz=:zz,' 76 65 44 32 76 79 10 73 78 80 85 84 32 34 77 111 110 116 104 44 32'
zz=:zz,' 100 97 121 44 32 121 101 97 114 34 59 32 77 44 32 68 44 32 89 10 7'
zz=:zz,'3 70 32 89 32 47 32 52 32 61 32 73 78 84 40 89 32 47 32 52 41 32 84'
zz=:zz,' 72 69 78 32 70 79 82 32 67 32 61 32 51 32 84 79 32 49 50 58 32 68 '
zz=:zz,'40 67 41 32 61 32 68 40 67 41 32 43 32 49 58 32 78 69 88 84 32 67 1'
zz=:zz,'0 68 89 32 61 32 68 40 77 41 32 43 32 68 58 32 68 89 32 61 32 68 89'
zz=:zz,' 32 45 32 76 79 32 47 32 51 54 48 58 32 68 89 32 61 32 68 89 32 43 '
zz=:zz,'32 46 53 10 84 72 32 61 32 57 46 51 53 55 48 48 49 32 43 32 68 68 3'
zz=:zz,'2 42 32 68 89 32 43 32 49 46 57 49 52 32 42 32 83 73 78 40 68 82 32'
zz=:zz,' 42 32 40 68 68 32 42 32 68 89 32 45 32 51 46 57 55 41 41 10 67 51 '
zz=:zz,'32 61 32 46 51 57 55 56 32 42 32 67 79 83 40 68 82 32 42 32 84 72 4'
zz=:zz,'1 10 68 67 32 61 32 45 49 32 47 32 68 82 32 42 32 65 84 78 40 67 51'
zz=:zz,' 32 47 32 40 83 81 82 40 49 32 45 32 67 51 32 94 32 50 41 41 41 10 '
zz=:zz,'73 70 32 76 65 32 60 32 48 32 84 72 69 78 32 65 49 32 61 32 57 48 3'
zz=:zz,'2 43 32 76 65 32 45 32 68 67 32 69 76 83 69 32 65 49 32 61 32 57 48'
zz=:zz,' 32 45 32 76 65 32 43 32 68 67 58 32 80 82 73 78 84 10 73 70 32 65 '
zz=:zz,'49 32 60 32 45 53 48 32 47 32 54 48 32 84 72 69 78 32 80 82 73 78 8'
zz=:zz,'4 32 34 83 117 110 32 110 101 118 101 114 32 114 105 115 101 115 34'
zz=:zz,' 58 32 71 79 84 79 32 50 48 48 10 73 70 32 76 65 32 60 32 48 32 84 '
zz=:zz,'72 69 78 32 65 50 32 61 32 45 57 48 32 45 32 76 65 32 45 32 68 67 3'
zz=:zz,'2 69 76 83 69 32 65 50 32 61 32 76 65 32 45 32 57 48 32 43 32 68 67'
zz=:zz,' 10 73 70 32 65 50 32 62 61 32 45 53 48 32 47 32 54 48 32 84 72 69 '
zz=:zz,'78 32 80 82 73 78 84 32 34 83 117 110 32 110 101 118 101 114 32 115'
zz=:zz,' 101 116 115 34 58 32 71 79 84 79 32 50 48 48 10 67 49 32 61 32 40 '
zz=:zz,'83 73 78 40 45 68 82 32 42 32 53 48 32 47 32 54 48 41 32 45 32 83 7'
zz=:zz,'3 78 40 68 82 32 42 32 68 67 41 32 42 32 83 73 78 40 68 82 32 42 32'
zz=:zz,' 76 65 41 41 32 47 32 40 67 79 83 40 68 82 32 42 32 68 67 41 32 42 '
zz=:zz,'32 67 79 83 40 68 82 32 42 32 76 65 41 41 10 84 50 32 61 32 40 49 3'
zz=:zz,'2 47 32 68 82 41 32 42 32 65 84 78 40 83 81 82 40 49 32 45 32 67 49'
zz=:zz,' 32 94 32 50 41 32 47 32 67 49 41 58 32 73 70 32 67 49 32 62 61 32 '
zz=:zz,'48 32 84 72 69 78 32 84 49 32 61 32 51 54 48 32 45 32 84 50 10 73 7'
zz=:zz,'0 32 67 49 32 60 32 48 32 84 72 69 78 32 84 50 32 61 32 49 56 48 32'
zz=:zz,' 43 32 84 50 58 32 84 49 32 61 32 51 54 48 32 45 32 84 50 10 84 82 '
zz=:zz,'32 61 32 84 49 32 47 32 49 53 32 45 32 49 50 58 32 84 83 32 61 32 8'
zz=:zz,'4 50 32 47 32 49 53 10 69 84 32 61 32 45 46 49 50 55 54 32 42 32 83'
zz=:zz,' 73 78 40 68 82 32 42 32 40 68 68 32 42 32 68 89 32 45 32 51 46 57 '
zz=:zz,'55 41 41 32 45 32 46 49 53 49 49 32 42 32 83 73 78 40 68 82 32 42 3'
zz=:zz,'2 40 50 32 42 32 68 68 32 42 32 68 89 32 43 32 49 55 46 56 54 41 41'
zz=:zz,' 10 84 82 32 61 32 84 82 32 45 32 69 84 58 32 84 83 32 61 32 84 83 '
zz=:zz,'32 45 32 69 84 10 73 78 80 85 84 32 34 84 105 109 101 32 122 111 11'
zz=:zz,'0 101 32 40 104 41 34 59 32 84 90 10 84 67 32 61 32 45 84 90 32 45 '
zz=:zz,'32 76 79 32 47 32 49 53 58 32 82 32 61 32 84 82 32 43 32 84 67 58 3'
zz=:zz,'2 83 32 61 32 84 83 32 43 32 84 67 10 67 50 32 61 32 40 83 73 78 40'
zz=:zz,' 68 82 32 42 32 68 67 41 32 45 32 83 73 78 40 68 82 32 42 32 76 65 '
zz=:zz,'41 32 42 32 83 73 78 40 45 68 82 32 42 32 53 48 32 47 32 54 48 41 4'
zz=:zz,'1 32 47 32 40 67 79 83 40 68 82 32 42 32 76 65 41 32 45 32 83 73 78'
zz=:zz,' 40 68 82 32 42 32 76 65 41 32 42 32 83 73 78 40 45 68 82 32 42 32 '
zz=:zz,'53 48 32 47 32 54 48 41 41 10 90 49 32 61 32 40 49 32 47 32 68 82 4'
zz=:zz,'1 32 42 32 65 84 78 40 83 81 82 40 49 32 45 32 67 50 32 94 32 50 41'
zz=:zz,' 32 47 32 67 50 41 58 32 73 70 32 67 50 32 62 61 32 48 32 84 72 69 '
zz=:zz,'78 32 90 50 32 61 32 51 54 48 32 45 32 90 49 10 73 70 32 67 50 32 6'
zz=:zz,'0 32 48 32 84 72 69 78 32 90 49 32 61 32 49 56 48 32 43 32 90 49 58'
zz=:zz,' 32 90 50 32 61 32 51 54 48 32 45 32 90 49 10 80 82 73 78 84 32 34 '
zz=:zz,'83 117 110 114 105 115 101 32 34 59 32 73 78 84 40 82 41 59 32 34 1'
zz=:zz,'04 34 59 32 73 78 84 40 54 48 48 32 42 32 40 82 32 45 32 73 78 84 4'
zz=:zz,'0 82 41 41 41 32 47 32 49 48 59 10 80 82 73 78 84 32 34 109 32 97 4'
zz=:zz,'6 109 46 44 32 97 122 105 109 117 116 104 32 34 59 32 73 78 84 40 4'
zz=:zz,'9 48 32 42 32 90 49 41 32 47 32 49 48 10 80 82 73 78 84 32 34 83 11'
zz=:zz,'7 110 115 101 116 32 34 59 32 73 78 84 40 83 41 59 32 34 104 34 59 '
zz=:zz,'32 73 78 84 40 54 48 48 32 42 32 40 83 32 45 32 73 78 84 40 83 41 4'
zz=:zz,'1 41 32 47 32 49 48 59 10 80 82 73 78 84 32 34 109 32 112 46 109 46'
zz=:zz,' 44 32 97 122 105 109 117 116 104 32 34 59 32 73 78 84 40 49 48 32 '
zz=:zz,'42 32 90 50 41 32 47 32 49 48 10 50 48 48 32 69 78 68 10 10 109 111'
zz=:zz,' 110 97 100 58 32 32 110 116 82 105 115 101 115 101 116 32 61 46 32'
zz=:zz,' 115 117 110 114 105 115 101 115 101 116 49 32 102 108 66 76 72 77 '
zz=:zz,'68 89 10 10 32 32 78 66 46 32 114 105 115 101 32 97 110 100 32 115 '
zz=:zz,'101 116 32 116 105 109 101 115 32 97 116 32 68 111 103 32 76 97 107'
zz=:zz,' 101 32 116 111 100 97 121 32 40 100 97 121 108 105 103 104 116 32 '
zz=:zz,'115 97 118 105 110 103 115 41 10 32 32 116 100 32 61 46 32 40 52 52'
zz=:zz,' 32 43 32 49 57 37 54 48 41 44 40 45 32 55 54 32 43 32 50 49 37 54 '
zz=:zz,'48 41 44 32 52 32 44 32 49 32 124 46 32 116 111 100 97 121 32 48 10'
zz=:zz,' 32 32 115 117 110 114 105 115 101 115 101 116 49 32 116 100 10 10 '
zz=:zz,'32 32 78 66 46 32 114 105 115 101 32 97 110 100 32 115 101 116 32 1'
zz=:zz,'16 105 109 101 115 32 111 110 32 74 117 110 101 32 51 48 32 49 57 5'
zz=:zz,'7 53 32 111 110 32 71 114 101 101 110 119 105 99 104 32 109 101 114'
zz=:zz,' 105 100 105 97 110 10 32 32 116 48 61 46 32 32 32 48 32 48 32 48 3'
zz=:zz,'2 54 32 51 48 32 49 57 57 53 32 32 78 66 46 32 101 113 117 97 116 1'
zz=:zz,'11 114 10 32 32 116 49 61 46 32 32 52 57 32 48 32 48 32 54 32 51 48'
zz=:zz,' 32 49 57 57 53 32 32 78 66 46 32 110 111 114 116 104 32 45 32 108 '
zz=:zz,'97 116 32 111 102 32 119 101 115 116 101 114 110 32 85 83 47 67 97 '
zz=:zz,'110 97 100 97 32 98 111 114 100 101 114 10 32 32 116 50 61 46 32 95'
zz=:zz,' 52 55 32 48 32 48 32 54 32 51 48 32 49 57 57 53 32 32 78 66 46 32 '
zz=:zz,'115 111 117 116 104 32 45 32 115 111 117 116 104 101 114 110 32 67 '
zz=:zz,'104 105 108 101 32 97 110 100 32 65 114 103 101 110 116 105 110 97 '
zz=:zz,'10 32 32 116 51 61 46 32 32 55 53 32 48 32 48 32 54 32 51 48 32 49 '
zz=:zz,'57 57 53 32 32 78 66 46 32 102 97 114 32 110 111 114 116 104 32 40 '
zz=:zz,'115 117 110 32 97 108 119 97 121 115 32 117 112 41 10 32 32 116 52 '
zz=:zz,'61 46 32 95 55 53 32 48 32 48 32 54 32 51 48 32 49 57 57 53 32 32 7'
zz=:zz,'8 66 46 32 102 97 114 32 115 111 117 116 104 32 40 115 117 110 32 9'
zz=:zz,'7 108 119 97 121 115 32 100 111 119 110 41 10 10 32 32 115 117 110 '
zz=:zz,'114 105 115 101 115 101 116 49 32 116 48 10 10 32 32 115 117 110 11'
zz=:zz,'4 105 115 101 115 101 116 49 32 116 48 32 44 32 116 49 32 44 32 116'
zz=:zz,' 50 32 44 32 116 51 32 44 58 32 116 52 10 10 32 32 78 66 46 32 99 1'
zz=:zz,'11 109 112 97 114 101 32 97 108 103 111 114 105 116 104 109 115 10 '
zz=:zz,'32 32 115 117 110 49 32 61 46 32 115 117 110 114 105 115 101 115 10'
zz=:zz,'1 116 49 32 116 48 32 44 32 116 49 32 44 32 116 50 32 44 32 116 51 '
zz=:zz,'32 44 58 32 116 52 10 32 32 115 117 110 48 32 61 46 32 115 117 110 '
zz=:zz,'114 105 115 101 115 101 116 48 32 125 58 34 49 32 116 48 32 44 32 1'
zz=:zz,'16 49 32 44 32 116 50 32 44 32 116 51 32 44 58 32 116 52 10 32 32 1'
zz=:zz,'15 117 110 49 32 45 32 115 117 110 48 10 10 32 32 78 66 46 32 116 1'
zz=:zz,'05 109 101 115 32 111 110 32 101 113 117 97 116 111 114 32 102 111 '
zz=:zz,'114 32 77 97 114 99 104 32 50 49 32 49 57 57 53 32 102 111 114 32 9'
zz=:zz,'7 108 108 32 49 32 104 111 117 114 32 116 105 109 101 32 122 111 11'
zz=:zz,'0 101 115 10 32 32 115 117 110 114 105 115 101 115 101 116 49 32 48'
zz=:zz,' 32 48 32 44 34 49 32 40 44 46 105 46 32 50 52 41 32 44 34 49 32 93'
zz=:zz,' 32 51 32 50 49 32 49 57 57 53 10 10 32 32 78 66 46 32 116 105 109 '
zz=:zz,'101 115 32 102 111 114 32 99 97 108 101 110 100 97 114 32 121 101 9'
zz=:zz,'7 114 32 49 57 57 53 32 111 110 32 116 104 101 32 71 114 101 101 11'
zz=:zz,'0 119 105 99 104 32 109 101 114 105 100 105 97 110 10 32 32 109 100'
zz=:zz,' 121 57 53 32 61 46 32 52 55 32 48 32 48 32 44 34 49 32 93 32 49 32'
zz=:zz,' 124 46 34 49 32 121 101 97 114 100 97 116 101 115 32 49 57 57 53 1'
zz=:zz,'0 32 32 114 115 49 57 53 32 61 46 32 115 117 110 114 105 115 101 11'
zz=:zz,'5 101 116 49 32 109 100 121 57 53{a.                               '
zz=:21677{.zz
showpass 0 9 put ". ".'zz_',SOLOCALE,'_' [ cocurrent 'base' NB.{*JOD*}
".soclear NB.{*JOD*}

cocurrent SO__JODobj NB.{*JOD*}
zz=:''
zz=:zz,'(<<;._1 '' bstats antimode dev dstat freqdist fuserows geomean harme'
zz=:zz,'an kurtosis lsfit mean median midpt mode2 movgmean movmean q1 q3 sk'
zz=:zz,'ewness ssdev stddev var''),<<;._1 '' sunmoon NORISESET arctan calmoon'
zz=:zz,'s cos datecheck fromjulian moons round sin sunriseset0 sunriseset1 '
zz=:zz,'tabit tan today yeardates''                                         '
zz=:294{.zz
showpass 2 grp&> ". ". 'zz_',SOLOCALE,'_' [ cocurrent 'base' NB.{*JOD*}
".soclear NB.{*JOD*}
cocurrent 'base' NB.{*JOD*}
showpass 'NB. end-of-JOD-dump-file regenerate cross references with:  0 globs&> }. revo '''' ' NB.{*JOD*}
